package com.hunliji.monitor.web.model.param;

import com.hunliji.monitor.share.enums.AlertTypeEnum;
import com.hunliji.monitor.share.enums.SeverityEnum;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Map;

/**
 * File：AliyunAlertNotifyParam.java<br> Title: <br> Description: <br>
 *
 * @author lejin Date: 2022/10/9
 */
@NoArgsConstructor
@Data
public class AliyunAlertNotifyParam {
    /**
     * 告警规则所属Project
     */
    private String project;

    /**
     * 告警规则ID，Project内唯一
     */
    private String alertId;

    /**
     * 告警规则名称
     */
    private String alertName;
    /**
     * 告警类型。
     * sls_alert：由告警监控规则触发的告警。
     * sls_pub：来自于开放告警的告警。
     * sls_ml：由智能巡检触发的告警。
     * @see AlertTypeEnum
     */
    private String alertType;
    /**
     * 告警的详细URL地址
     */
    private String alertUrl;
    /**
     * 本次评估时间
     */
    private String alertTime;
    /**
     * 首次触发时间
     */
    private String fireTime;
    /**
     * 告警严重度。
     * 10：严重
     * 8：高
     * 6：中
     * 4：低
     * 2：仅报告
     * @see SeverityEnum
     */
    private Integer severity;

    /**
     * 告警数量
     */
    private String alertCount;


    /**
     * 告警标题
     */
    private String alertTitle;
    /**
     * 告警信息
     */
    private String alertMsg;

    /**
     * 当前key，本次触发产生的一个key
     */
    private String currentKey;
    /**
     * 额外的map信息
     */
    private Map<String,String> extraMap;

}
